

package com.hexinfo.dmpro.script.pack.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.hexinfo.dmpro.common.base.PageResult;
import com.hexinfo.dmpro.script.pack.entity.ScriptPackScanListEntity;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;

import java.util.List;

/**
 * 脚本打包扫描清单
 *
 * @author Wang zhihao
 * @date 2023-09-13 18:05:43
 */
public interface IScriptPackScanListService extends IService<ScriptPackScanListEntity> {

    /**
     * @Method queryList
     * @Param
     * @param page
     * @param scriptPackScanList
     * @Return com.hexinfo.dmpro.common.base.PageResult
     * @Description 分页查询并返回PageResult类型的对象
     * @Author Wang zhihao
     * @Date 2023/9/14 16:40
     * @Version V1.0
     */
    PageResult queryList(Page page, ScriptPackScanListEntity scriptPackScanList);

    /**
     * @Method queryListNoPage
     * @Param
     * @param scriptPackScanList
     * @Return java.util.List<com.hexinfo.dmpro.script.pack.entity.ScriptPackScanListEntity>
     * @Description 不分页查询
     * @Author Wang zhihao
     * @Date 2023/10/18 19:13
     * @Version V1.0
     */
    List<ScriptPackScanListEntity> queryListNoPage(ScriptPackScanListEntity scriptPackScanList);

    /**
     * @Method getListByTaskId
     * @Param
     * @param taskId
     * @Return java.util.List<com.hexinfo.dmpro.script.pack.entity.ScriptPackScanListEntity>
     * @Description 根据任务Id获取List
     * @Author Wang zhihao
     * @Date 2024/1/25 13:32
     * @Version V1.0
     */
    List<ScriptPackScanListEntity> getListByTaskId(String taskId);

    /**
     * @Method getFailFileByTaskId
     * @Param
     * @param taskId
     * @Return java.util.List<java.lang.String>
     * @Description 根据任务ID获取失败的文件
     * @Author Wang zhihao
     * @Date 2023/12/25 20:55
     * @Version V1.0
     */
    List<String> getFailFileByTaskId(String taskId);

    /**
     * @Method updateStatus
     * @Param
     * @param id
     * @Return void
     * @Description 根据ID修改状态
     * @Author Wang zhihao
     * @Date 2023/9/15 18:26
     * @Version V1.0
     */
    void updateStatus(String id, String status);

    /**
     * @Method refreshStateById
     * @Param
     * @param id
     * @Return void
     * @Description 刷新状态
     * @Author Wang zhihao
     * @Date 2023/12/19 18:04
     * @Version V1.0
     */
    void refreshStateById(String id);

    /**
     * @Method removeByTaskId
     * @Param
     * @param taskId
     * @Return void
     * @Description 根据任务主键删除
     * @Author Wang zhihao
     * @Date 2023/10/18 19:13
     * @Version V1.0
     */
    void removeByTaskId(String taskId);

    /**
     * @Method batchIgnoreById
     * @Param
     * @param id
     * @Return void
     * @Description 根据ID批量忽略
     * @Author Wang zhihao
     * @Date 2023/12/19 18:04
     * @Version V1.0
     */
    void batchIgnoreById(String id);
}
